1. Field of the Invention
The present invention generally relates to a non-volatile memory storage system, and more particularly, to a block management method of a non-volatile memory.
2. Description of Related Art
The low fabrication cost of flash memory has been a major motivation in the development of flash memory. A flash memory chip is composed of blocks, and each of the blocks is further composed of pages. Each block is the basic data erasing unit, while each page is the basic data accessing unit. Once data is written into a page, no other data can be written into the same page until the block corresponding to the page is entirely erased. Thus, data is usually written into free pages instead of the original pages in consideration of the performance. Accordingly, a logical block address (LBA) and physical address translation mechanism or information is required to locate data corresponding to each LBA.
Flash memories can be categorized into low-cost multi-level cell (MLC) flash memories and conventional single-level cell (SLC) flash memories with higher cost. Different mechanisms for managing the data storage space of flash memory have been provided. However, the performance of flash memory decreases along with the fabrication cost thereof. Additionally, two restrictions on writing data into MLC flash memory have been newly established. One restriction is that each page can only be written once, and the other restriction is that the pages in each block have to be written in sequence. Thereby, the conventional management mechanisms are either incapable of managing low-cost MLC flash memory or very inefficient in doing so.
In order to improve the access efficiency of the entire system, some special methods for managing data to be written in small quantities have been provided. In addition, some adaptable address translation mechanisms for managing flash memory storage systems with large capacities have been further provided in order to improve the scalability of the management mechanisms. In some other mechanisms, a write buffer is adopted in order to improve the efficiency of writing data into a flash memory. However, in a storage system adopting such a mechanism, data may be lost when the system fails or the power supply is cut off. As a result, the storage system lacks data consistency.